#pragma once
/*
@author TriLVH
@description management contra state
*/

#include "ContraData.h"
#include "ContraStateInterface.h"

class ContraStateDead : public ContraStateInterface {

protected:
	/* Pointer to contra data */
	ContraData* _data;
	int delayForDead;
public:
	ContraStateDead(ContraData* data);
	/* Contra stand state */
	virtual void stand() {}

	/* Contra stand up state */
	virtual void standUp() {}

	/* Contra move right state */
	virtual void moveRight() {}

	/* Contra move left state */
	virtual void moveLeft() {}

	/* Contra fire state */
	virtual void fire() {}

	/* Contra sit state*/
	virtual void sit() {}

	/* Contra update state */
	virtual void update();

	/* Draw current contra state */
	virtual void draw(long time);

	/* Contra fly state */
	virtual void fly() {}

	/* Contra reach to land */
	virtual void firstOnLand()  {}
};